home *** CD-ROM | disk | FTP | other *** search
/ InterCD 2000 June / june_2000.iso / Site Building / JavaNavigator / JavaNavigator.exe / %MAINDIR% / files / JClass / JAVATabTree.jar / JAVATabTree.class (.txt) < prev    next >
Encoding:
Java Class File  |  2000-01-30  |  25.4 KB  |  1,274 lines

  1. import java.applet.Applet;
  2. import java.awt.Color;
  3. import java.awt.Component;
  4. import java.awt.Container;
  5. import java.awt.Dimension;
  6. import java.awt.Event;
  7. import java.awt.Font;
  8. import java.awt.Graphics;
  9. import java.awt.Image;
  10. import java.awt.LayoutManager;
  11. import java.awt.MediaTracker;
  12. import java.awt.Panel;
  13. import java.io.DataInputStream;
  14. import java.io.IOException;
  15. import java.io.InputStream;
  16. import java.net.MalformedURLException;
  17. import java.net.URL;
  18. import java.util.NoSuchElementException;
  19. import java.util.StringTokenizer;
  20.  
  21. public class JAVATabTree extends Applet implements Runnable {
  22.    Thread thJAVATabTree;
  23.    String[][] aHref;
  24.    String[][] aFrame;
  25.    String[][] aHref2;
  26.    String[][] aFrame2;
  27.    String[][] aMO;
  28.    String[][] aExpand;
  29.    String[] aTabLabel;
  30.    String[] aTabMO;
  31.    String[] aTabHref;
  32.    String[] aTabFrame;
  33.    String[] aTabHref2;
  34.    String[] aTabFrame2;
  35.    int iLoading;
  36.    int oldx;
  37.    int oldiTabIx;
  38.    String sMsgOld = "";
  39.    int[][] iLevel;
  40.    String sText = "";
  41.    String sHref = "";
  42.    String sFrame = "";
  43.    String sHref2 = "";
  44.    String sFrame2 = "";
  45.    String sExpand = "";
  46.    String sMO = "";
  47.    String sMsg = "";
  48.    boolean flg1 = false;
  49.    String sDefMO = "1st JAVA Navigator[Tab&Tree] (c)1997-1999 AUSCOMP-WorldWide (www.auscomp.com)";
  50.    String sLevel = "";
  51.    String sPic1 = "";
  52.    String sPic2 = "";
  53.    int iItemMaxCnt;
  54.    int iItemCnt;
  55.    int[] iIC;
  56.    int iTabCnt;
  57.    String sBorder = "no";
  58.    Font fFont = new Font("Dialog", 0, 12);
  59.    String dblClick = "no";
  60.    TreeNode oldNode;
  61.    TreeNode newNode;
  62.    TreeNode oldMouseOverNode;
  63.    int iYRec;
  64.    String sLine;
  65.    int intWidth = 200;
  66.    int intHeight = 250;
  67.    Image ImgClosed;
  68.    Image ImgOpen;
  69.    Image ImgdLeaf;
  70.    Image ImgdClosed;
  71.    Image ImgdOpen;
  72.    // $FF: renamed from: g1 java.awt.Graphics
  73.    Graphics field_0;
  74.    int oldTabPanel = -1;
  75.    String sCopyright = "AUSCOMP (www.auscomp.com)";
  76.    int iTabDefault = 999;
  77.    private boolean bCopyright = false;
  78.    private boolean allLoaded = false;
  79.    Image imgBG;
  80.    Image imgTreeBG;
  81.    int[] iColorBlack = new int[]{0, 0, 0};
  82.    int[] iColorWhite = new int[]{255, 255, 255};
  83.    int[] iColorRed = new int[]{255, 0, 0};
  84.    int[] iColorBlue = new int[]{0, 0, 255};
  85.    int[] iColorYellow = new int[]{255, 255, 231};
  86.    int[] iColorGreen = new int[]{0, 255, 0};
  87.    int[] iTREE_BG = new int[]{255, 255, 255};
  88.    int[] iTREE_FG = new int[]{0, 0, 0};
  89.    int[] iTREE_SEL_BG = new int[]{0, 0, 255};
  90.    int[] iTREE_SEL_FG = new int[]{255, 255, 255};
  91.    int[] iTREE_MOUSEOVER = new int[]{255, 0, 0};
  92.    int[] iTAB_MOUSEOVER = new int[]{255, 0, 0};
  93.    int[] iTREE_LINECOLOR = new int[]{0, 0, 0};
  94.    int[] iTREE_FOLDEROCOLOR = new int[]{0, 0, 0};
  95.    int[] iTREE_FOLDERCCOLOR = new int[]{0, 0, 0};
  96.    int[] iTREE_LEAFCOLOR = new int[]{0, 0, 0};
  97.    int[] iTREE_TOOLTIPBACKCOLOR = new int[]{255, 255, 231};
  98.    int[] iTREE_TOOLTIPFORECOLOR = new int[]{0, 0, 0};
  99.    int[] iTREE_MOUSEOVERFRAMECOLOR = new int[]{255, 0, 0};
  100.    int[] iColor;
  101.    boolean bTREE_AUTOEXPAND = false;
  102.    boolean bExpand = false;
  103.    Color cBackground;
  104.    String sTREE_STYLE;
  105.    String sTREE_MOUSEOVERFRAME;
  106.    int iTREE_LINESTEP;
  107.    String sTREE_TOOLTIP;
  108.    String sTREE_BORDER;
  109.    String sTREE_DOUBLECLICK;
  110.    String sMOUSEOVERSOUND;
  111.    String sMOUSECLICKSOUND;
  112.    String sSHOWTABSONLY;
  113.    String[] sTabColorParam;
  114.    String[] sColorParam;
  115.    String[] sNormalParam;
  116.    String[] sImageParam;
  117.    TabPanel tabPanel1;
  118.    TreeView[] treeView;
  119.    // $FF: renamed from: TN TreeNode[][]
  120.    TreeNode[][] field_1;
  121.    TreeNode[][] TN1;
  122.  
  123.    void tabPanel1_MouseUp(Event event) {
  124.       try {
  125.          if (!this.sMOUSECLICKSOUND.equals("none")) {
  126.             ((Applet)this).play(((Applet)this).getCodeBase(), this.sMOUSECLICKSOUND);
  127.          }
  128.       } catch (Exception var6) {
  129.       }
  130.  
  131.       try {
  132.          int iTabIx = this.tabPanel1.getCurrentPanelNdx();
  133.          if (this.oldiTabIx == iTabIx) {
  134.             return;
  135.          }
  136.  
  137.          this.oldiTabIx = iTabIx;
  138.          this.sHref = this.aTabHref[iTabIx];
  139.          this.sFrame = this.aTabFrame[iTabIx];
  140.          this.sHref2 = this.aTabHref2[iTabIx];
  141.          this.sFrame2 = this.aTabFrame2[iTabIx];
  142.          this.sHref = this.sHref.trim();
  143.          this.sFrame = this.sFrame.trim();
  144.          this.sHref2 = this.sHref2.trim();
  145.          this.sFrame2 = this.sFrame2.trim();
  146.          if (!this.sHref.toLowerCase().equals("none")) {
  147.             try {
  148.                ((Applet)this).getAppletContext().showDocument(new URL(((Applet)this).getCodeBase(), this.sHref), this.sFrame);
  149.             } catch (MalformedURLException var4) {
  150.             }
  151.          }
  152.  
  153.          if (!this.sHref2.toLowerCase().equals("none")) {
  154.             try {
  155.                ((Applet)this).getAppletContext().showDocument(new URL(((Applet)this).getCodeBase(), this.sHref2), this.sFrame2);
  156.                return;
  157.             } catch (MalformedURLException var3) {
  158.                return;
  159.             }
  160.          }
  161.       } catch (ArrayIndexOutOfBoundsException var5) {
  162.       }
  163.  
  164.    }
  165.  
  166.    void tabPanel1_MouseMove(Event event) {
  167.       int x = 0;
  168.       x = this.tabPanel1.setTabLabelColor(event);
  169.  
  170.       try {
  171.          if (this.oldTabPanel != x) {
  172.             if (!this.sMOUSEOVERSOUND.equals("none")) {
  173.                ((Applet)this).play(((Applet)this).getCodeBase(), this.sMOUSEOVERSOUND);
  174.             }
  175.  
  176.             this.tabPanel1.setMOLabelColor(new Color(this.iTAB_MOUSEOVER[0], this.iTAB_MOUSEOVER[1], this.iTAB_MOUSEOVER[2]), x);
  177.          }
  178.  
  179.          this.oldTabPanel = x;
  180.       } catch (Exception var3) {
  181.       }
  182.  
  183.       if (x == 999 && this.oldx != 999) {
  184.          this.sMsg = this.sDefMO;
  185.       } else if (x != 999) {
  186.          this.sMsg = this.aTabMO[x];
  187.          this.sHref = this.aTabHref[x];
  188.       }
  189.  
  190.       this.oldx = x;
  191.       this.sMsg = this.sMsg.trim();
  192.       if (this.sMsg != this.sMsgOld) {
  193.          if (!this.sMsg.toLowerCase().equals("none") && !this.sMsg.toLowerCase().equals("")) {
  194.             ((Applet)this).showStatus(this.sMsg);
  195.          } else {
  196.             ((Applet)this).showStatus(this.sHref);
  197.          }
  198.  
  199.          this.sMsgOld = this.sMsg;
  200.       }
  201.  
  202.    }
  203.  
  204.    void tabPanel1_MouseEnter(Event event) {
  205.       ((Applet)this).showStatus(this.sDefMO);
  206.    }
  207.  
  208.    void treeView_MouseEnter(Event event) {
  209.       ((Applet)this).showStatus(this.sDefMO);
  210.    }
  211.  
  212.    void treeView_MouseMove(Event event) {
  213.       try {
  214.          if (!this.sMOUSEOVERSOUND.equals("none")) {
  215.             ((Applet)this).play(((Applet)this).getCodeBase(), this.sMOUSEOVERSOUND);
  216.          }
  217.       } catch (Exception var4) {
  218.       }
  219.  
  220.       try {
  221.          int iTabIx = this.tabPanel1.getCurrentPanelNdx();
  222.  
  223.          for(int z = 0; z < this.iIC[iTabIx]; ++z) {
  224.             if (this.field_1[iTabIx][z] == this.treeView[iTabIx].getMouseOverNode()) {
  225.                this.sMO = this.aMO[iTabIx][z];
  226.                this.sHref = this.aHref[iTabIx][z];
  227.                this.newNode = this.field_1[iTabIx][z];
  228.                break;
  229.             }
  230.          }
  231.  
  232.          this.sMO = this.sMO.trim();
  233.          if (this.sMO.toLowerCase().equals("") || this.sMO.toLowerCase().equals("none")) {
  234.             this.sMO = this.sHref;
  235.          }
  236.  
  237.          if (this.newNode != this.oldNode) {
  238.             ((Applet)this).showStatus(this.sMO);
  239.             this.oldNode = this.newNode;
  240.             return;
  241.          }
  242.       } catch (ArrayIndexOutOfBoundsException var5) {
  243.       }
  244.  
  245.    }
  246.  
  247.    void treeView_MouseDown(Event event) {
  248.       int iTabIx = this.tabPanel1.getCurrentPanelNdx();
  249.       this.sHref = "none";
  250.       this.sHref2 = "none";
  251.  
  252.       try {
  253.          if (!this.sMOUSECLICKSOUND.equals("none")) {
  254.             ((Applet)this).play(((Applet)this).getCodeBase(), this.sMOUSECLICKSOUND);
  255.          }
  256.       } catch (Exception var6) {
  257.       }
  258.  
  259.       for(int z = 0; z < this.iIC[iTabIx]; ++z) {
  260.          if (this.field_1[iTabIx][z] == this.treeView[iTabIx].getSelectedNode()) {
  261.             this.sHref = this.aHref[iTabIx][z];
  262.             this.sFrame = this.aFrame[iTabIx][z];
  263.             this.sHref2 = this.aHref2[iTabIx][z];
  264.             this.sFrame2 = this.aFrame2[iTabIx][z];
  265.             break;
  266.          }
  267.       }
  268.  
  269.       this.sHref = this.sHref.trim();
  270.       this.sFrame = this.sFrame.trim();
  271.       this.sHref2 = this.sHref2.trim();
  272.       this.sFrame2 = this.sFrame2.trim();
  273.       if (!this.sHref.toLowerCase().equals("none")) {
  274.          try {
  275.             ((Applet)this).getAppletContext().showDocument(new URL(((Applet)this).getCodeBase(), this.sHref), this.sFrame);
  276.          } catch (MalformedURLException var5) {
  277.          }
  278.       }
  279.  
  280.       if (!this.sHref2.toLowerCase().equals("none")) {
  281.          try {
  282.             ((Applet)this).getAppletContext().showDocument(new URL(((Applet)this).getCodeBase(), this.sHref2), this.sFrame2);
  283.          } catch (MalformedURLException var4) {
  284.          }
  285.       }
  286.    }
  287.  
  288.    public void start() {
  289.       this.field_0 = ((Component)this).getGraphics();
  290.       this.paint(this.field_0);
  291.       this.thJAVATabTree = new Thread(this);
  292.       this.thJAVATabTree.start();
  293.    }
  294.  
  295.    public void run() {
  296.       if (!this.allLoaded) {
  297.          this.constructTabTree();
  298.          this.tabPanel1.show(true);
  299.          if (this.iTabDefault < 999) {
  300.             this.tabPanel1.setCurrentPanelNdx(this.iTabDefault);
  301.             this.tabPanel1_MouseUp((Event)null);
  302.             return;
  303.          }
  304.  
  305.          this.tabPanel1.setCurrentPanelNdx(0);
  306.       }
  307.  
  308.    }
  309.  
  310.    public void stop() {
  311.       this.thJAVATabTree.stop();
  312.       this.thJAVATabTree = null;
  313.    }
  314.  
  315.    public void paint(Graphics g) {
  316.       ++this.iLoading;
  317.       ((Component)this).setBackground(this.cBackground);
  318.       g.drawString("1st JAVA Navigator V5.5", 10, 20);
  319.       g.drawString("Loading resource No." + this.iLoading, 10, 40);
  320.       g.drawString("Please wait ...", 10, 60);
  321.    }
  322.  
  323.    public void init() {
  324.       super.init();
  325.       ((Container)this).setLayout((LayoutManager)null);
  326.       ((Panel)this).addNotify();
  327.  
  328.       try {
  329.          Dimension d = ((Component)this).size();
  330.          this.intWidth = d.width;
  331.          this.intHeight = d.height;
  332.       } catch (Exception var2) {
  333.       }
  334.  
  335.       if (this.intWidth < 20) {
  336.          this.intWidth = 200;
  337.       }
  338.  
  339.       if (this.intHeight < 50) {
  340.          this.intHeight = 250;
  341.       }
  342.  
  343.       this.tabPanel1 = new TabPanel();
  344.       this.tabPanel1.setLayout((LayoutManager)null);
  345.       ((Component)this).size();
  346.       this.tabPanel1.reshape(0, 0, this.intWidth, this.intHeight);
  347.    }
  348.  
  349.    private void constructTabTree() {
  350.       String strBG = "";
  351.  
  352.       try {
  353.          strBG = ((Applet)this).getParameter("COPYRIGHT");
  354.          if (strBG.indexOf(this.sCopyright) > 0) {
  355.             this.bCopyright = true;
  356.          } else {
  357.             this.bCopyright = false;
  358.          }
  359.       } catch (Exception var35) {
  360.       }
  361.  
  362.       for(int x = 0; x < 3; ++x) {
  363.          switch (x) {
  364.             case 0:
  365.                this.iColor = this.iColorWhite;
  366.                break;
  367.             case 1:
  368.                this.iColor = this.iColorBlack;
  369.                break;
  370.             case 2:
  371.                this.iColor = this.iColorBlue;
  372.          }
  373.  
  374.          try {
  375.             strBG = ((Applet)this).getParameter(this.sTabColorParam[x]);
  376.             if (strBG != null) {
  377.                this.iColor[0] = this.getCOLOR(0, this.sTabColorParam[x], strBG);
  378.                this.iColor[1] = this.getCOLOR(1, this.sTabColorParam[x], strBG);
  379.                this.iColor[2] = this.getCOLOR(2, this.sTabColorParam[x], strBG);
  380.             }
  381.          } catch (Exception var34) {
  382.          }
  383.  
  384.          switch (x) {
  385.             case 0:
  386.                this.cBackground = new Color(this.iColor[0], this.iColor[1], this.iColor[2]);
  387.                this.tabPanel1.setBackground(new Color(this.iColor[0], this.iColor[1], this.iColor[2]));
  388.                break;
  389.             case 1:
  390.                this.tabPanel1.setLabelColor(new Color(this.iColor[0], this.iColor[1], this.iColor[2]));
  391.                break;
  392.             case 2:
  393.                this.tabPanel1.setMOColor(new Color(this.iColor[0], this.iColor[1], this.iColor[2]));
  394.                this.iTAB_MOUSEOVER[0] = this.iColor[0];
  395.                this.iTAB_MOUSEOVER[1] = this.iColor[1];
  396.                this.iTAB_MOUSEOVER[2] = this.iColor[2];
  397.          }
  398.       }
  399.  
  400.       try {
  401.          this.sSHOWTABSONLY = "NO";
  402.          strBG = ((Applet)this).getParameter("SHOWTABSONLY");
  403.          if (strBG != null && strBG.toLowerCase().equals("yes")) {
  404.             this.tabPanel1.showTabsOnly(true);
  405.          }
  406.       } catch (Exception var33) {
  407.       }
  408.  
  409.       try {
  410.          this.sMOUSEOVERSOUND = "none";
  411.          strBG = ((Applet)this).getParameter("MOUSEOVERSOUND");
  412.          if (strBG != null) {
  413.             this.sMOUSEOVERSOUND = strBG;
  414.          }
  415.       } catch (Exception var32) {
  416.       }
  417.  
  418.       try {
  419.          this.sMOUSECLICKSOUND = "none";
  420.          strBG = ((Applet)this).getParameter("MOUSECLICKSOUND");
  421.          if (strBG != null) {
  422.             this.sMOUSECLICKSOUND = strBG;
  423.          }
  424.       } catch (Exception var31) {
  425.       }
  426.  
  427.       try {
  428.          strBG = ((Applet)this).getParameter("TABONBOTTOM");
  429.          if (strBG != null && strBG.toLowerCase().equals("yes")) {
  430.             this.tabPanel1.setTabsOnBottom(true);
  431.          }
  432.       } catch (Exception var30) {
  433.       }
  434.  
  435.       try {
  436.          strBG = ((Applet)this).getParameter("TAB_FONT");
  437.          String fName = "";
  438.          String fStyle = "";
  439.          String fSize = "";
  440.          int iStyle = 0;
  441.          if (strBG != null) {
  442.             StringTokenizer parser = new StringTokenizer(strBG, ";");
  443.  
  444.             try {
  445.                fName = parser.nextToken();
  446.                fStyle = parser.nextToken();
  447.                fSize = parser.nextToken();
  448.                if (fStyle.trim().toLowerCase().equals("bold")) {
  449.                   iStyle = 1;
  450.                }
  451.  
  452.                if (fStyle.trim().toLowerCase().equals("italic")) {
  453.                   iStyle = 2;
  454.                }
  455.  
  456.                this.fFont = new Font(fName, iStyle, Integer.parseInt(fSize.trim()));
  457.             } catch (NoSuchElementException var27) {
  458.                System.out.println(strBG + " Parameter Error(1)");
  459.             } catch (Exception var28) {
  460.                System.out.println(strBG + " Parameter Error(2)");
  461.             }
  462.          }
  463.       } catch (Exception var29) {
  464.       }
  465.  
  466.       this.tabPanel1.setFont(this.fFont);
  467.  
  468.       try {
  469.          strBG = ((Applet)this).getParameter("TAB_DEFAULT");
  470.          if (strBG == null) {
  471.             this.iTabDefault = 999;
  472.          } else {
  473.             this.iTabDefault = Integer.parseInt(strBG);
  474.          }
  475.       } catch (Exception var26) {
  476.       }
  477.  
  478.       try {
  479.          this.imgBG = null;
  480.          strBG = ((Applet)this).getParameter("TAB_BG_IMAGE");
  481.          if (strBG != null) {
  482.             this.imgBG = ((Applet)this).getImage(((Applet)this).getCodeBase(), strBG);
  483.             MediaTracker m = new MediaTracker(this);
  484.  
  485.             try {
  486.                m.addImage(this.imgBG, 0);
  487.                m.waitForAll();
  488.             } catch (InterruptedException var24) {
  489.                return;
  490.             }
  491.  
  492.             if (this.imgBG.getHeight(this) > 0) {
  493.                this.tabPanel1.setBGImage(this.imgBG);
  494.             }
  495.          }
  496.       } catch (Exception var25) {
  497.       }
  498.  
  499.       ((Container)this).add(this.tabPanel1);
  500.       this.tabPanel1.show(false);
  501.  
  502.       for(int x = 0; x < 12; ++x) {
  503.          switch (x) {
  504.             case 0:
  505.                this.iColor = this.iTREE_BG;
  506.                break;
  507.             case 1:
  508.                this.iColor = this.iTREE_FG;
  509.                break;
  510.             case 2:
  511.                this.iColor = this.iTREE_SEL_BG;
  512.                break;
  513.             case 3:
  514.                this.iColor = this.iTREE_SEL_FG;
  515.                break;
  516.             case 4:
  517.                this.iColor = this.iTREE_MOUSEOVER;
  518.                break;
  519.             case 5:
  520.                this.iColor = this.iTREE_LINECOLOR;
  521.                break;
  522.             case 6:
  523.                this.iColor = this.iTREE_FOLDEROCOLOR;
  524.                break;
  525.             case 7:
  526.                this.iColor = this.iTREE_FOLDERCCOLOR;
  527.                break;
  528.             case 8:
  529.                this.iColor = this.iTREE_LEAFCOLOR;
  530.                break;
  531.             case 9:
  532.                this.iColor = this.iTREE_TOOLTIPBACKCOLOR;
  533.                break;
  534.             case 10:
  535.                this.iColor = this.iTREE_TOOLTIPFORECOLOR;
  536.                break;
  537.             case 11:
  538.                this.iColor = this.iTREE_MOUSEOVERFRAMECOLOR;
  539.          }
  540.  
  541.          try {
  542.             String var36 = null;
  543.             strBG = ((Applet)this).getParameter(this.sColorParam[x]);
  544.             if (strBG != null) {
  545.                this.iColor[0] = this.getCOLOR(0, this.sColorParam[x], strBG);
  546.                this.iColor[1] = this.getCOLOR(1, this.sColorParam[x], strBG);
  547.                this.iColor[2] = this.getCOLOR(2, this.sColorParam[x], strBG);
  548.             }
  549.          } catch (Exception var23) {
  550.          }
  551.  
  552.          for(int y = 0; y < 3; ++y) {
  553.             switch (x) {
  554.                case 0:
  555.                   this.iTREE_BG[y] = this.iColor[y];
  556.                   break;
  557.                case 1:
  558.                   this.iTREE_FG[y] = this.iColor[y];
  559.                   break;
  560.                case 2:
  561.                   this.iTREE_SEL_BG[y] = this.iColor[y];
  562.                   break;
  563.                case 3:
  564.                   this.iTREE_SEL_FG[y] = this.iColor[y];
  565.                   break;
  566.                case 4:
  567.                   this.iTREE_MOUSEOVER[y] = this.iColor[y];
  568.                   break;
  569.                case 5:
  570.                   this.iTREE_LINECOLOR[y] = this.iColor[y];
  571.                   break;
  572.                case 6:
  573.                   this.iTREE_FOLDEROCOLOR[y] = this.iColor[y];
  574.                   break;
  575.                case 7:
  576.                   this.iTREE_FOLDERCCOLOR[y] = this.iColor[y];
  577.                   break;
  578.                case 8:
  579.                   this.iTREE_LEAFCOLOR[y] = this.iColor[y];
  580.                   break;
  581.                case 9:
  582.                   this.iTREE_TOOLTIPBACKCOLOR[y] = this.iColor[y];
  583.                   break;
  584.                case 10:
  585.                   this.iTREE_TOOLTIPFORECOLOR[y] = this.iColor[y];
  586.                   break;
  587.                case 11:
  588.                   this.iTREE_MOUSEOVERFRAMECOLOR[y] = this.iColor[y];
  589.             }
  590.          }
  591.       }
  592.  
  593.       for(int x = 0; x < 7; ++x) {
  594.          switch (x) {
  595.             case 0:
  596.                this.sTREE_STYLE = "AXAA";
  597.                break;
  598.             case 1:
  599.                this.sTREE_MOUSEOVERFRAME = "none";
  600.                break;
  601.             case 2:
  602.                this.iTREE_LINESTEP = 2;
  603.                break;
  604.             case 3:
  605.                this.sTREE_TOOLTIP = "yes";
  606.                break;
  607.             case 4:
  608.                this.sTREE_BORDER = "No";
  609.                break;
  610.             case 5:
  611.                this.sTREE_DOUBLECLICK = "No";
  612.                break;
  613.             case 6:
  614.                this.bTREE_AUTOEXPAND = false;
  615.          }
  616.  
  617.          try {
  618.             String var37 = null;
  619.             strBG = ((Applet)this).getParameter(this.sNormalParam[x]);
  620.          } catch (Exception var22) {
  621.          }
  622.  
  623.          switch (x) {
  624.             case 0:
  625.                if (strBG == null) {
  626.                   strBG = "AXAA";
  627.                }
  628.  
  629.                this.sTREE_STYLE = strBG;
  630.                break;
  631.             case 1:
  632.                if (strBG == null) {
  633.                   strBG = "none";
  634.                }
  635.  
  636.                this.sTREE_MOUSEOVERFRAME = strBG;
  637.                break;
  638.             case 2:
  639.                try {
  640.                   this.iTREE_LINESTEP = Integer.parseInt(strBG);
  641.                } catch (Exception var21) {
  642.                }
  643.                break;
  644.             case 3:
  645.                if (strBG == null) {
  646.                   strBG = "Yes";
  647.                }
  648.  
  649.                try {
  650.                   if (!strBG.trim().toLowerCase().equals("yes")) {
  651.                      strBG = "No";
  652.                   }
  653.                } catch (Exception var20) {
  654.                }
  655.  
  656.                this.sTREE_TOOLTIP = strBG;
  657.                break;
  658.             case 4:
  659.                if (strBG == null) {
  660.                   strBG = "No";
  661.                }
  662.  
  663.                try {
  664.                   if (strBG.trim().toLowerCase().equals("yes")) {
  665.                      strBG = "Yes";
  666.                   }
  667.                } catch (Exception var19) {
  668.                }
  669.  
  670.                this.sTREE_BORDER = strBG;
  671.                break;
  672.             case 5:
  673.                if (strBG == null) {
  674.                   strBG = "No";
  675.                }
  676.  
  677.                try {
  678.                   if (strBG.trim().toLowerCase().equals("yes")) {
  679.                      strBG = "Yes";
  680.                   }
  681.                } catch (Exception var18) {
  682.                }
  683.  
  684.                this.sTREE_DOUBLECLICK = strBG;
  685.                break;
  686.             case 6:
  687.                this.bTREE_AUTOEXPAND = false;
  688.  
  689.                try {
  690.                   if (strBG.trim().toLowerCase().equals("yes")) {
  691.                      this.bTREE_AUTOEXPAND = true;
  692.                   }
  693.                } catch (Exception var17) {
  694.                }
  695.          }
  696.       }
  697.  
  698.       for(int x = 0; x < 4; ++x) {
  699.          try {
  700.             strBG = ((Applet)this).getParameter(this.sImageParam[x]);
  701.             this.imgBG = null;
  702.             if (strBG != null) {
  703.                this.imgBG = ((Applet)this).getImage(((Applet)this).getCodeBase(), strBG);
  704.                MediaTracker m = new MediaTracker(this);
  705.  
  706.                try {
  707.                   m.addImage(this.imgBG, 0);
  708.                   m.waitForAll();
  709.                } catch (InterruptedException var15) {
  710.                }
  711.             }
  712.  
  713.             switch (x) {
  714.                case 0:
  715.                   if (this.imgBG.getHeight(this) > 0) {
  716.                      this.ImgdOpen = this.imgBG;
  717.                   } else {
  718.                      System.out.println("Error - couldn't find FOLDER OPEN IMAGE - please check image URL");
  719.                   }
  720.                   break;
  721.                case 1:
  722.                   if (this.imgBG.getHeight(this) > 0) {
  723.                      this.ImgdClosed = this.imgBG;
  724.                   } else {
  725.                      System.out.println("Error - couldn't find FOLDER CLOSED IMAGE - please check image URL");
  726.                   }
  727.                   break;
  728.                case 2:
  729.                   if (this.imgBG.getHeight(this) > 0) {
  730.                      this.ImgdLeaf = this.imgBG;
  731.                   } else {
  732.                      System.out.println("Error - couldn't find FOLDER CLOSED IMAGE - please check image URL");
  733.                   }
  734.                   break;
  735.                case 3:
  736.                   if (this.imgBG.getHeight(this) > 0) {
  737.                      this.imgTreeBG = this.imgBG;
  738.                   } else {
  739.                      System.out.println("Error - couldn't find FOLDER TREE BACKGROUND IMAGE - please check image URL");
  740.                   }
  741.             }
  742.          } catch (Exception var16) {
  743.          }
  744.       }
  745.  
  746.       try {
  747.          strBG = ((Applet)this).getParameter("TREE_FONT");
  748.          String fName = "";
  749.          String fStyle = "";
  750.          String fSize = "";
  751.          int iStyle = 0;
  752.          if (strBG != null) {
  753.             StringTokenizer parser = new StringTokenizer(strBG, ";");
  754.  
  755.             try {
  756.                fName = parser.nextToken();
  757.                fStyle = parser.nextToken();
  758.                fSize = parser.nextToken();
  759.                if (fStyle.trim().toLowerCase().equals("bold")) {
  760.                   iStyle = 1;
  761.                }
  762.  
  763.                if (fStyle.trim().toLowerCase().equals("italic")) {
  764.                   iStyle = 2;
  765.                }
  766.  
  767.                this.fFont = new Font(fName, iStyle, Integer.parseInt(fSize.trim()));
  768.             } catch (NoSuchElementException var12) {
  769.                System.out.println(strBG + " Parameter Error(1)");
  770.             } catch (Exception var13) {
  771.                System.out.println(strBG + " Parameter Error(2)");
  772.             }
  773.          }
  774.       } catch (Exception var14) {
  775.       }
  776.  
  777.       int i;
  778.       for(i = 0; ((Applet)this).getParameter("TAB" + i) != null; ++i) {
  779.       }
  780.  
  781.       this.iTabCnt = i;
  782.       this.treeView = new TreeView[i];
  783.       String tempString = "";
  784.       this.iIC = new int[i];
  785.       this.aTabLabel = new String[i];
  786.       this.aTabMO = new String[i];
  787.       this.aTabHref = new String[i];
  788.       this.aTabHref2 = new String[i];
  789.       this.aTabFrame = new String[i];
  790.       this.aTabFrame2 = new String[i];
  791.       this.aHref = new String[i][999];
  792.       this.aFrame = new String[i][999];
  793.       this.aHref2 = new String[i][999];
  794.       this.aFrame2 = new String[i][999];
  795.       this.aExpand = new String[i][999];
  796.       this.aMO = new String[i][999];
  797.       this.iLevel = new int[i][999];
  798.       this.field_1 = new TreeNode[i][999];
  799.       this.TN1 = new TreeNode[i][999];
  800.  
  801.       for(int var54 = 0; ((Applet)this).getParameter("TAB" + var54) != null; ++var54) {
  802.          tempString = new String(((Applet)this).getParameter("TAB" + var54));
  803.          this.aTabLabel[var54] = "";
  804.          this.aTabMO[var54] = "";
  805.          this.aTabHref[var54] = "none";
  806.          this.aTabHref2[var54] = "none";
  807.          this.aTabFrame[var54] = "none";
  808.          this.aTabFrame2[var54] = "none";
  809.          if (this.bCopyright) {
  810.             StringTokenizer parser = new StringTokenizer(tempString, ";");
  811.  
  812.             try {
  813.                this.aTabLabel[var54] = parser.nextToken();
  814.                this.aTabHref[var54] = parser.nextToken();
  815.                this.aTabFrame[var54] = parser.nextToken();
  816.                this.aTabMO[var54] = parser.nextToken();
  817.                this.aTabHref2[var54] = parser.nextToken();
  818.                this.aTabFrame2[var54] = parser.nextToken();
  819.             } catch (NoSuchElementException var11) {
  820.             }
  821.          } else {
  822.             this.aTabLabel[var54] = "Error";
  823.             this.aTabMO[var54] = "Copyright parameter missing";
  824.          }
  825.  
  826.          this.treeView[var54] = new TreeView();
  827.          this.treeView[var54].setBackground(new Color(this.iTREE_BG[0], this.iTREE_BG[1], this.iTREE_BG[2]));
  828.          this.treeView[var54].setForeground(new Color(this.iTREE_FG[0], this.iTREE_FG[1], this.iTREE_FG[2]));
  829.          this.treeView[var54].setBgHilite(new Color(this.iTREE_SEL_BG[0], this.iTREE_SEL_BG[1], this.iTREE_SEL_BG[2]));
  830.          this.treeView[var54].setFgHilite(new Color(this.iTREE_SEL_FG[0], this.iTREE_SEL_FG[1], this.iTREE_SEL_FG[2]));
  831.          this.treeView[var54].setMOHilite(new Color(this.iTREE_MOUSEOVER[0], this.iTREE_MOUSEOVER[1], this.iTREE_MOUSEOVER[2]));
  832.          this.treeView[var54].setLineColor(new Color(this.iTREE_LINECOLOR[0], this.iTREE_LINECOLOR[1], this.iTREE_LINECOLOR[2]));
  833.          this.treeView[var54].setFolderOColor(new Color(this.iTREE_FOLDEROCOLOR[0], this.iTREE_FOLDEROCOLOR[1], this.iTREE_FOLDEROCOLOR[2]));
  834.          this.treeView[var54].setFolderCColor(new Color(this.iTREE_FOLDERCCOLOR[0], this.iTREE_FOLDERCCOLOR[1], this.iTREE_FOLDERCCOLOR[2]));
  835.          this.treeView[var54].setLeafColor(new Color(this.iTREE_LEAFCOLOR[0], this.iTREE_LEAFCOLOR[1], this.iTREE_LEAFCOLOR[2]));
  836.          this.treeView[var54].setToolTipBackColor(new Color(this.iTREE_TOOLTIPBACKCOLOR[0], this.iTREE_TOOLTIPBACKCOLOR[1], this.iTREE_TOOLTIPBACKCOLOR[2]));
  837.          this.treeView[var54].setToolTipForeColor(new Color(this.iTREE_TOOLTIPFORECOLOR[0], this.iTREE_TOOLTIPFORECOLOR[1], this.iTREE_TOOLTIPFORECOLOR[2]));
  838.          this.treeView[var54].setMouseOverFrameColor(new Color(this.iTREE_MOUSEOVERFRAMECOLOR[0], this.iTREE_MOUSEOVERFRAMECOLOR[1], this.iTREE_MOUSEOVERFRAMECOLOR[2]));
  839.          this.treeView[var54].setStyle(this.sTREE_STYLE);
  840.          this.treeView[var54].setMouseOverStyle(this.sTREE_MOUSEOVERFRAME);
  841.          this.treeView[var54].setLineStep(this.iTREE_LINESTEP);
  842.          this.treeView[var54].setToolTip(this.sTREE_TOOLTIP);
  843.          this.treeView[var54].setFont(this.fFont);
  844.          this.treeView[var54].setBorder(this.sTREE_BORDER);
  845.          this.treeView[var54].setDblClick(this.sTREE_DOUBLECLICK);
  846.          this.treeView[var54].reshape(0, 0, this.intWidth, this.intHeight);
  847.          this.tabPanel1.add(this.treeView[var54]);
  848.          if (this.imgTreeBG != null) {
  849.             this.treeView[var54].setBGImage(this.imgTreeBG);
  850.          }
  851.       }
  852.  
  853.       this.tabPanel1.setPanelLabels(this.aTabLabel);
  854.  
  855.       for(int z = 0; z < this.iTabCnt; ++z) {
  856.          int ii = 0;
  857.          strBG = ((Applet)this).getParameter("TAB" + z + "_Content");
  858.          if (strBG != null) {
  859.             ii = this.readFile(strBG, z);
  860.          } else {
  861.             for(; ((Applet)this).getParameter("T" + z + "I" + ii) != null; ++ii) {
  862.                strBG = ((Applet)this).getParameter("T" + z + "I" + ii);
  863.                if (strBG != null) {
  864.                   this.workParam("T" + z + "I" + ii, strBG, z);
  865.                }
  866.             }
  867.          }
  868.  
  869.          if (ii > 0) {
  870.             this.makeTree(z, this.iIC[z]);
  871.          }
  872.       }
  873.  
  874.       this.allLoaded = true;
  875.    }
  876.  
  877.    public void setTabTreeNode(String sNode, int iTab, boolean bExecute) {
  878.       try {
  879.          if (sNode == null) {
  880.             return;
  881.          }
  882.  
  883.          this.tabPanel1.setCurrentPanelNdx(iTab);
  884.          this.treeView[iTab].setNode(sNode);
  885.          if (this.treeView[iTab].getSelectedText().equals(sNode) && bExecute) {
  886.             this.treeView_MouseDown((Event)null);
  887.             return;
  888.          }
  889.       } catch (Exception var4) {
  890.       }
  891.  
  892.    }
  893.  
  894.    public String getTabTreeNode(int iTab) {
  895.       this.tabPanel1.setCurrentPanelNdx(iTab);
  896.       return this.treeView[iTab].getSelectedText() == null ? null : this.treeView[iTab].getSelectedText();
  897.    }
  898.  
  899.    public void addTabTreeNode(int iTab, String s1ParentNodeText, String s1NodeText, String s1Href1, String s1Target1, String s1Href2, String s1Target2, String s1Statusbar, String s1Expand) {
  900.       try {
  901.          if (s1NodeText == null) {
  902.             return;
  903.          }
  904.  
  905.          this.tabPanel1.setCurrentPanelNdx(iTab);
  906.          this.aHref[iTab][this.iIC[iTab]] = "none";
  907.          if (s1Href1 != null && !s1Href1.trim().equals("")) {
  908.             this.aHref[iTab][this.iIC[iTab]] = s1Href1;
  909.          }
  910.  
  911.          if (s1Target1 != null) {
  912.             this.aFrame[iTab][this.iIC[iTab]] = s1Target1;
  913.          } else {
  914.             this.aFrame[iTab][this.iIC[iTab]] = "none";
  915.          }
  916.  
  917.          this.aHref2[iTab][this.iIC[iTab]] = "none";
  918.          if (s1Href2 != null && !s1Href2.trim().equals("")) {
  919.             this.aHref2[iTab][this.iIC[iTab]] = s1Href2;
  920.          }
  921.  
  922.          if (s1Target2 != null) {
  923.             this.aFrame2[iTab][this.iIC[iTab]] = s1Target2;
  924.          } else {
  925.             this.aFrame2[iTab][this.iIC[iTab]] = "none";
  926.          }
  927.  
  928.          this.aMO[iTab][this.iIC[iTab]] = "";
  929.          if (s1Statusbar != null && !s1Statusbar.trim().equals("")) {
  930.             this.aMO[iTab][this.iIC[iTab]] = s1Statusbar;
  931.          }
  932.  
  933.          this.aExpand[iTab][this.iIC[iTab]] = "NO";
  934.          if (s1Expand != null && s1Expand.trim().toLowerCase().equals("yes")) {
  935.             this.aExpand[iTab][this.iIC[iTab]] = "YES";
  936.          }
  937.  
  938.          this.field_1[iTab][this.iIC[iTab]] = new TreeNode(s1NodeText, this.ImgdLeaf, this.ImgdLeaf);
  939.          this.bExpand = false;
  940.          if (this.aExpand[iTab][this.iIC[iTab]].toLowerCase().equals("yes")) {
  941.             this.bExpand = true;
  942.          }
  943.  
  944.          if (this.bTREE_AUTOEXPAND) {
  945.             this.bExpand = true;
  946.          }
  947.  
  948.          if (s1ParentNodeText.trim().equals("")) {
  949.             this.treeView[iTab].append(this.field_1[iTab][this.iIC[iTab]], this.bExpand);
  950.          } else {
  951.             this.treeView[iTab].setNode(s1ParentNodeText);
  952.             this.TN1[iTab][this.iIC[iTab]] = this.treeView[iTab].getSelectedNode();
  953.             if (this.TN1[iTab][this.iIC[iTab]] != null) {
  954.                this.TN1[iTab][this.iIC[iTab]].setCollapsedImage(this.ImgdClosed);
  955.                this.TN1[iTab][this.iIC[iTab]].setExpandedImage(this.ImgdOpen);
  956.             }
  957.  
  958.             this.treeView[iTab].insert(this.field_1[iTab][this.iIC[iTab]], this.TN1[iTab][this.iIC[iTab]], 0, this.bExpand);
  959.          }
  960.  
  961.          if (!this.bTREE_AUTOEXPAND) {
  962.             if (this.aExpand[iTab][this.iIC[iTab]].trim().toUpperCase().equals("YES")) {
  963.                this.bExpand = true;
  964.             } else {
  965.                this.bExpand = false;
  966.             }
  967.          }
  968.  
  969.          this.treeView[iTab].setNode(s1NodeText);
  970.       } catch (Exception var10) {
  971.       }
  972.  
  973.       int var10002 = this.iIC[iTab]++;
  974.       this.treeView[iTab].redraw();
  975.    }
  976.  
  977.    public void delTabTreeNode(String sNode, int iTab) {
  978.       try {
  979.          if (!sNode.trim().equals("(c)1997-2000 Auscomp") && !sNode.trim().equals("Copyright parameter missing!") && !sNode.trim().equals("Auscom - America (West Coast)") && !sNode.trim().equals("Auscom - America (East Coast)") && !sNode.trim().equals("Auscom - Australia")) {
  980.             this.tabPanel1.setCurrentPanelNdx(iTab);
  981.             this.treeView[iTab].remove(sNode);
  982.             this.treeView[iTab].redraw();
  983.             return;
  984.          }
  985.       } catch (Exception var3) {
  986.       }
  987.  
  988.    }
  989.  
  990.    public boolean handleEvent(Event event) {
  991.       try {
  992.          if (event.target == this.treeView[this.tabPanel1.getCurrentPanelNdx()] && event.id == 501 && this.treeView[this.tabPanel1.getCurrentPanelNdx()].getMouseOverNode() != null) {
  993.             this.treeView_MouseDown(event);
  994.             return true;
  995.          }
  996.       } catch (Exception var3) {
  997.       }
  998.  
  999.       try {
  1000.          if (this.oldMouseOverNode != this.treeView[this.tabPanel1.getCurrentPanelNdx()].getMouseOverNode() && this.treeView[this.tabPanel1.getCurrentPanelNdx()].getMouseOverNode() != null && event.target == this.treeView[this.tabPanel1.getCurrentPanelNdx()] && event.id == 503) {
  1001.             this.treeView_MouseMove(event);
  1002.             this.oldMouseOverNode = this.treeView[this.tabPanel1.getCurrentPanelNdx()].getMouseOverNode();
  1003.             return true;
  1004.          }
  1005.       } catch (IndexOutOfBoundsException var2) {
  1006.       }
  1007.  
  1008.       if (event.target == this.tabPanel1 && event.id == 504) {
  1009.          this.tabPanel1_MouseEnter(event);
  1010.          return true;
  1011.       } else if (event.target == this.tabPanel1 && event.id == 503) {
  1012.          this.tabPanel1_MouseMove(event);
  1013.          return true;
  1014.       } else if (event.target == this.tabPanel1 && event.id == 502) {
  1015.          this.tabPanel1_MouseUp(event);
  1016.          return true;
  1017.       } else {
  1018.          return super.handleEvent(event);
  1019.       }
  1020.    }
  1021.  
  1022.    private int readFile(String tFile, int iTabCnt1) {
  1023.       this.sLine = "";
  1024.       this.iYRec = 0;
  1025.  
  1026.       try {
  1027.          URL u = new URL(((Applet)this).getCodeBase(), tFile);
  1028.          u.openConnection();
  1029.          u.getContent();
  1030.          InputStream in = u.openStream();
  1031.          DataInputStream datainStream = new DataInputStream(in);
  1032.  
  1033.          while((this.sLine = datainStream.readLine()) != null) {
  1034.             if (!this.sLine.trim().equalsIgnoreCase("")) {
  1035.                this.workParam("Tab" + iTabCnt1 + " File - Line: " + this.iYRec, this.sLine, iTabCnt1);
  1036.                ++this.iYRec;
  1037.             }
  1038.          }
  1039.       } catch (MalformedURLException var6) {
  1040.          System.err.println("URL Error");
  1041.       } catch (IOException e) {
  1042.          System.out.println("Error - File not found (" + ((Applet)this).getCodeBase() + tFile + ")");
  1043.          ((Throwable)e).printStackTrace();
  1044.       }
  1045.  
  1046.       return this.iYRec;
  1047.    }
  1048.  
  1049.    private int getCOLOR(int iColor, String sWhat, String sPBG) {
  1050.       int iRed = 255;
  1051.       int iBlue = 255;
  1052.       int iGreen = 255;
  1053.       StringTokenizer parser = new StringTokenizer(sPBG, ",");
  1054.  
  1055.       try {
  1056.          String sRed = parser.nextToken();
  1057.          String sGreen = parser.nextToken();
  1058.          String sBlue = parser.nextToken();
  1059.          iRed = Integer.parseInt(sRed);
  1060.          iGreen = Integer.parseInt(sGreen);
  1061.          iBlue = Integer.parseInt(sBlue);
  1062.       } catch (NoSuchElementException var11) {
  1063.          System.out.println(sWhat + " Parameter Error(1)");
  1064.       } catch (Exception var12) {
  1065.          System.out.println(sWhat + " Parameter Error(2)");
  1066.       }
  1067.  
  1068.       switch (iColor) {
  1069.          case 0:
  1070.             return iRed;
  1071.          case 1:
  1072.             return iGreen;
  1073.          case 2:
  1074.             return iBlue;
  1075.          default:
  1076.             return 255;
  1077.       }
  1078.    }
  1079.  
  1080.    private void makeNode(int iTCnt, int iNCnt, String sT, String sP1, String sP2) {
  1081.       if (sP1.trim().toLowerCase().equals("")) {
  1082.          this.field_1[iTCnt][iNCnt] = new TreeNode(sT);
  1083.       } else if (sP1.trim().toLowerCase().equals("none")) {
  1084.          this.field_1[iTCnt][iNCnt] = new TreeNode(sT);
  1085.       } else if (sP1.trim().toLowerCase().equals("leaf")) {
  1086.          if (this.ImgdLeaf == null) {
  1087.             this.field_1[iTCnt][iNCnt] = new TreeNode(sT);
  1088.          } else {
  1089.             this.field_1[iTCnt][iNCnt] = new TreeNode(sT, this.ImgdLeaf, this.ImgdLeaf);
  1090.          }
  1091.       } else if (sP1.trim().toLowerCase().equals("folder")) {
  1092.          if (this.ImgdLeaf == null) {
  1093.             this.field_1[iTCnt][iNCnt] = new TreeNode(sT);
  1094.          } else {
  1095.             this.field_1[iTCnt][iNCnt] = new TreeNode(sT, this.ImgdClosed, this.ImgdOpen);
  1096.          }
  1097.       } else {
  1098.          this.ImgClosed = ((Applet)this).getImage(((Applet)this).getCodeBase(), sP1);
  1099.          this.ImgOpen = ((Applet)this).getImage(((Applet)this).getCodeBase(), sP2);
  1100.          MediaTracker m = new MediaTracker(this);
  1101.  
  1102.          try {
  1103.             m.addImage(this.ImgClosed, 0);
  1104.             m.addImage(this.ImgOpen, 1);
  1105.             m.waitForAll();
  1106.          } catch (InterruptedException var7) {
  1107.             return;
  1108.          }
  1109.  
  1110.          this.field_1[iTCnt][iNCnt] = new TreeNode(sT, this.ImgClosed, this.ImgOpen);
  1111.       }
  1112.    }
  1113.  
  1114.    private void makeTree(int iNodeTCnt, int iNodeICnt) {
  1115.       this.bExpand = false;
  1116.  
  1117.       for(int y = 0; y < iNodeICnt; ++y) {
  1118.          if (this.bTREE_AUTOEXPAND) {
  1119.             this.bExpand = true;
  1120.          }
  1121.  
  1122.          if (this.iLevel[iNodeTCnt][y] == 0) {
  1123.             this.treeView[iNodeTCnt].append(this.field_1[iNodeTCnt][y], this.bExpand);
  1124.          } else {
  1125.             this.treeView[iNodeTCnt].insert(this.field_1[iNodeTCnt][y], this.TN1[iNodeTCnt][this.iLevel[iNodeTCnt][y] - 1], 0, this.bExpand);
  1126.          }
  1127.  
  1128.          this.TN1[iNodeTCnt][this.iLevel[iNodeTCnt][y]] = this.field_1[iNodeTCnt][y];
  1129.          if (!this.bTREE_AUTOEXPAND) {
  1130.             if (this.aExpand[iNodeTCnt][y].trim().toUpperCase().equals("YES")) {
  1131.                this.bExpand = true;
  1132.             } else {
  1133.                this.bExpand = false;
  1134.             }
  1135.          }
  1136.       }
  1137.  
  1138.       this.treeView[iNodeTCnt].redraw();
  1139.    }
  1140.  
  1141.    private void workParam(String sItem, String sP, int iTCnt) {
  1142.       if (this.bCopyright) {
  1143.          this.sHref2 = "None";
  1144.          this.sFrame2 = "None";
  1145.          this.sExpand = "NO";
  1146.          if (sP.substring(0, 3).equals("***")) {
  1147.             this.sHref = "None";
  1148.             this.sFrame = "None";
  1149.          } else {
  1150.             StringTokenizer parser = new StringTokenizer(sP, ";");
  1151.             int iCnt = parser.countTokens() - 10;
  1152.             if (iCnt != 0) {
  1153.                System.out.println("*** Warning in parameter '" + sItem + "' - Item count is ( " + parser.countTokens() + " ) instead of ( 10 ) *** ");
  1154.             }
  1155.  
  1156.             try {
  1157.                this.sText = parser.nextToken();
  1158.                this.sHref = parser.nextToken();
  1159.                this.sFrame = parser.nextToken();
  1160.                this.sLevel = parser.nextToken();
  1161.                this.sPic1 = parser.nextToken();
  1162.                this.sPic2 = parser.nextToken();
  1163.                this.sMO = parser.nextToken();
  1164.                this.sHref2 = parser.nextToken();
  1165.                this.sFrame2 = parser.nextToken();
  1166.                this.sExpand = parser.nextToken();
  1167.             } catch (NoSuchElementException var7) {
  1168.             } catch (Exception var8) {
  1169.                System.out.println(sItem + " Parameter Error(3)");
  1170.             }
  1171.  
  1172.             if (this.iIC[iTCnt] == 0 && iTCnt == 0) {
  1173.                this.makeNode(iTCnt, this.iIC[iTCnt], "(c)1997-2000 Auscomp", "SLauscomp.gif", "SLauscomp.gif");
  1174.                this.iLevel[iTCnt][this.iIC[iTCnt]] = 0;
  1175.                this.aHref[iTCnt][this.iIC[iTCnt]] = "http://www.auscomp.com";
  1176.                this.aFrame[iTCnt][this.iIC[iTCnt]] = "_blank";
  1177.                this.aHref2[iTCnt][this.iIC[iTCnt]] = "none";
  1178.                this.aFrame2[iTCnt][this.iIC[iTCnt]] = "none";
  1179.                this.aExpand[iTCnt][this.iIC[iTCnt]] = "NO";
  1180.                this.aMO[iTCnt][this.iIC[iTCnt]] = "1st JAVA Navigator (c)1997-2000 Auscomp-WorldWide.";
  1181.                int var10 = this.iIC[iTCnt]++;
  1182.                this.makeNode(iTCnt, this.iIC[iTCnt], "1st JAVA Navigator[Tab&Tree]", "none", "none");
  1183.                this.iLevel[iTCnt][this.iIC[iTCnt]] = 0;
  1184.                this.aHref[iTCnt][this.iIC[iTCnt]] = "http://www.auscomp.com";
  1185.                this.aFrame[iTCnt][this.iIC[iTCnt]] = "_blank";
  1186.                this.aHref2[iTCnt][this.iIC[iTCnt]] = "none";
  1187.                this.aFrame2[iTCnt][this.iIC[iTCnt]] = "none";
  1188.                this.aExpand[iTCnt][this.iIC[iTCnt]] = "NO";
  1189.                this.aMO[iTCnt][this.iIC[iTCnt]] = "1st JAVA Navigator[Tab&Tree] for evaluation purposes only.";
  1190.                var10 = this.iIC[iTCnt]++;
  1191.                this.makeNode(iTCnt, this.iIC[iTCnt], "For evaluation only", "none", "none");
  1192.                this.iLevel[iTCnt][this.iIC[iTCnt]] = 0;
  1193.                this.aHref[iTCnt][this.iIC[iTCnt]] = "http://www.auscomp.com/buy_online.html";
  1194.                this.aFrame[iTCnt][this.iIC[iTCnt]] = "_blank";
  1195.                this.aHref2[iTCnt][this.iIC[iTCnt]] = "none";
  1196.                this.aFrame2[iTCnt][this.iIC[iTCnt]] = "none";
  1197.                this.aExpand[iTCnt][this.iIC[iTCnt]] = "NO";
  1198.                this.aMO[iTCnt][this.iIC[iTCnt]] = "Click to buy on-line";
  1199.                var10 = this.iIC[iTCnt]++;
  1200.                this.makeNode(iTCnt, this.iIC[iTCnt], "_______________________________", "none", "none");
  1201.                this.iLevel[iTCnt][this.iIC[iTCnt]] = 0;
  1202.                this.aHref[iTCnt][this.iIC[iTCnt]] = "none";
  1203.                this.aFrame[iTCnt][this.iIC[iTCnt]] = "_blank";
  1204.                this.aHref2[iTCnt][this.iIC[iTCnt]] = "none";
  1205.                this.aFrame2[iTCnt][this.iIC[iTCnt]] = "none";
  1206.                this.aExpand[iTCnt][this.iIC[iTCnt]] = "NO";
  1207.                this.aMO[iTCnt][this.iIC[iTCnt]] = "Click to buy on-line";
  1208.                var10 = this.iIC[iTCnt]++;
  1209.             }
  1210.  
  1211.             if (this.iIC[iTCnt] == 0 && iTCnt == 0) {
  1212.                this.iIC[iTCnt] += 2;
  1213.             }
  1214.  
  1215.             this.sLevel = this.sLevel.trim();
  1216.             this.iLevel[iTCnt][this.iIC[iTCnt]] = 0;
  1217.  
  1218.             try {
  1219.                this.iLevel[iTCnt][this.iIC[iTCnt]] = Integer.parseInt(this.sLevel);
  1220.             } catch (Exception var6) {
  1221.             }
  1222.  
  1223.             this.aHref[iTCnt][this.iIC[iTCnt]] = this.sHref;
  1224.             this.aFrame[iTCnt][this.iIC[iTCnt]] = this.sFrame;
  1225.             this.aHref2[iTCnt][this.iIC[iTCnt]] = this.sHref2;
  1226.             this.aFrame2[iTCnt][this.iIC[iTCnt]] = this.sFrame2;
  1227.             this.aMO[iTCnt][this.iIC[iTCnt]] = this.sMO;
  1228.             this.aExpand[iTCnt][this.iIC[iTCnt]] = this.sExpand;
  1229.             this.makeNode(iTCnt, this.iIC[iTCnt], this.sText, this.sPic1, this.sPic2);
  1230.             int var14 = this.iIC[iTCnt]++;
  1231.          }
  1232.       } else {
  1233.          if (this.iIC[iTCnt] == 0) {
  1234.             this.makeNode(iTCnt, this.iIC[iTCnt], "(c)1997-2000 Auscomp", "SLauscomp.gif", "SLauscomp.gif");
  1235.             this.iLevel[iTCnt][this.iIC[iTCnt]] = 0;
  1236.             this.aHref[iTCnt][this.iIC[iTCnt]] = "http://www.auscomp.com";
  1237.             this.aFrame[iTCnt][this.iIC[iTCnt]] = "_blank";
  1238.             this.aHref2[iTCnt][this.iIC[iTCnt]] = "none";
  1239.             this.aFrame2[iTCnt][this.iIC[iTCnt]] = "none";
  1240.             this.aExpand[iTCnt][this.iIC[iTCnt]] = "no";
  1241.             this.aMO[iTCnt][this.iIC[iTCnt]] = "1st JAVA Navigator is a product from Auscomp-WorldWide.";
  1242.             int var10002 = this.iIC[iTCnt]++;
  1243.             this.makeNode(iTCnt, this.iIC[iTCnt], "Copyright parameter missing!", "none", "none");
  1244.             this.iLevel[iTCnt][this.iIC[iTCnt]] = 0;
  1245.             this.aHref[iTCnt][this.iIC[iTCnt]] = "http://www.auscomp.com";
  1246.             this.aFrame[iTCnt][this.iIC[iTCnt]] = "_blank";
  1247.             this.aHref2[iTCnt][this.iIC[iTCnt]] = "none";
  1248.             this.aFrame2[iTCnt][this.iIC[iTCnt]] = "none";
  1249.             this.aExpand[iTCnt][this.iIC[iTCnt]] = "no";
  1250.             this.aMO[iTCnt][this.iIC[iTCnt]] = "Copyright parameter missing!";
  1251.             var10002 = this.iIC[iTCnt]++;
  1252.          }
  1253.  
  1254.       }
  1255.    }
  1256.  
  1257.    public JAVATabTree() {
  1258.       this.cBackground = Color.white;
  1259.       this.sTREE_STYLE = "AXAA";
  1260.       this.sTREE_MOUSEOVERFRAME = "none";
  1261.       this.iTREE_LINESTEP = 2;
  1262.       this.sTREE_TOOLTIP = "yes";
  1263.       this.sTREE_BORDER = "no";
  1264.       this.sTREE_DOUBLECLICK = "no";
  1265.       this.sMOUSEOVERSOUND = "none";
  1266.       this.sMOUSECLICKSOUND = "none";
  1267.       this.sSHOWTABSONLY = "NO";
  1268.       this.sTabColorParam = new String[]{"TAB_BG", "TAB_FG", "TAB_MOUSEOVER"};
  1269.       this.sColorParam = new String[]{"TREE_BG", "TREE_FG", "TREE_SEL_BG", "TREE_SEL_FG", "TREE_MOUSEOVER", "TREE_LINECOLOR", "TREE_FOLDEROCOLOR", "TREE_FOLDERCCOLOR", "TREE_LEAFCOLOR", "TREE_TOOLTIPBACKCOLOR", "TREE_TOOLTIPFORECOLOR", "TREE_MOUSEOVERFRAMECOLOR"};
  1270.       this.sNormalParam = new String[]{"TREE_STYLE", "TREE_MOUSEOVERFRAME", "TREE_LINESTEP", "TREE_TOOLTIP", "TREE_BORDER", "TREE_DOUBLECLICK", "TREE_AUTOEXPAND"};
  1271.       this.sImageParam = new String[]{"FOLDER_OPEN", "FOLDER_CLOSED", "LEAF", "TREE_BG_IMAGE"};
  1272.    }
  1273. }
  1274.